<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
</head>

<body>
    <div class="div1">hello</div>
    <button onclick="getData()">ajax</button>
    <button onclick="getDataByPromise()">promise</button>
    <script>
        let data = {};
        // 封装ajax的过程
        // 1.ajax外面套上一层promise
        // 2.在ajax的成功的回调函数中执行resolve
        // 3.在ajax的失败的回调函数中执行reject
        // 4.new 一个实例 如果实在函数中被调用，就把实例返回出来
        // 5.调用实例中的then方法，then中的第一个回调函数出来成功，第二个回调函数处理失败
        function getData() {
            $.ajax({
                url: 'http://localhost:3000/comment/music?id=186016&limit=1',
                success: res => {
                    console.log(res);
                }
            })
        }
        function myPromise() {
            return new Promise((resolve, reject) => {
                $.ajax({
                    url: 'http://localhost:3000/comment/music?id=186016&limit=1',
                    success: function (res) {
                        resolve(res)
                    },
                    error: err => {
                        console.log(err);
                        reject(err)
                    } 
                })
            })
        }

        function getDataByPromise () {
            myPromise()
                .then(res => {
                    console.log(res);
                    // data.sss = res.sss;
                    // div.innerHTML = res.data.msg;
                })
                .catch(err => {
                    console.log(err);
                })
        }
    </script>
</body>

</html>